

Introduction to Radio Frequency Design: Software Manual

Wes Hayward (W7ZOI)

		copyright 1994, ARRL

Introduction.

In 1982 Prentice-Hall published a textbook that I wrote, a text that is 
now being re-published by the American Radio Relay League.  That volume, 
"Introduction to Radio Frequency Design," is now offered with a 
collection of computer programs, all written to be run on the IBM 
Personal Computer, or suitable "clones."  Instructions for running these 
programs are presented in this "on-disk" manual.  Many of the 
instructions are brief.  Hopefully, the programs will "run themselves," 
without too much instruction.  Many of the programs have on screen HELP 
facilities, available by pressing H while viewing the output screen for 
each program.

A simple on-screen menu is available under the title RFMENU.EXE.  Merely 
type this (from DOS) when in the directory that you have set up to hold 
the programs.  Press the ENTER key and you will see the list.

All of the programs were written to be run from the base Disk Operating 
System, or DOS.  As such, all that is required is to type the name of the 
program, followed by the ENTER key.  Any of the programs can also be run 
from the WINDOWS environment by "double clicking" on a program listing 
viewed from the File Manager, which is in the "MAIN" window of the 
"Program Manager."  

A few of the programs require VGA display to handle color graphics.  
However, most of the programs will run on any computer that can handle 
ASCII text display.

******************************************************************

Program Distribution:

The distribution disk for the Introduction to RF Design programs is not 
copy protected.  This does not mean that the author or the ARRL advocate 
the free distribution of copies of the disk.  We merely acknowledge that 
copy-protected disks are a pain, causing more fuss than they may justify.  
Our attitude is that this disk is like a book.  If you buy a book, you 
might loan it to a friend to read and use.  But it is not reasonable for 
your friend to copy the entire book.  In a similar vein, we expect that 
you will not create situations where more than one person can use these 
programs at a time.  We have tried to price the collection and the 
accompanying book to be affordable, even by the student.  We ask that you 
don't give copies away to others.

******************************************************************

Installation: 

The programs are all small and are generally independent of each other.  
As such, they may be run from either a directory on a hard disk or 
directly from a floppy disk.  We assume that a hard disk will be used.

A suitable directory should be "made" with the "make directory" command.  
This is done in DOS, rather than WINDOWS.  For example, from DOS while on 
the usual C: drive, type MD IRFD.  This generates a directory called 
IRFD.  

Now, place the distribution disk in your floppy disk drive, usually A.  
Then, type the following line, followed by the ENTER key:

	copy a:*.* c:\IRFD\*.* 

This will copy all of the programs into the IRFD directory. (There is one 
space between the first *.* and the c:.)

Running the programs is done by changing to the IRFD directory, typing 
the name of the program you wish to run, and pressing the ENTER key.  
Some of the programs will generate output files for use with other 
programs in the collection.   These will all appear in the IRFD 
directory.


This manual is segmented into two sections. The first relates to ladder 
filter programs.  The second contains the rest of the general programs 
that do not relate to ladder networks.

******************************************************************
     
                                                                 
1.0 LADDER FILTERS
                                                            
1.1 Ladder Introduction.

This set of programs relates to filter design methods presented in 
Chapters 2 and 3 of Intro. to RF Design.  The discussion presented here 
relates only to software details; the underlying concepts are presented 
in the text.

The analysis method used in GPLA, the "core" for this filter collection, 
is the so-called ladder method. This is presented on page 51 of Intro. to 
RF Design.  Also, see RF Design Magazine, September/October, 1983.

The ladder filter programs presented run on an IBM or "compatible" 
system.  A VGA card is required for graphic outputs.  A coprocessor is 
not required, but is accommodated.  If you have a system with 
coprocessor, use the analysis program named G87.exe instead of GPLA.  The 
design programs are all set up for ASCII output and use no color.  As 
such, they should be very generic, running in about any DOS environment.  
A version of GPLA called G0.exe is included; this form of the program 
presents only a tabular output.  As such, it will analyze filters on 
systems without graphic capabilities. 


The following filter programs are included and described in this manual:
       
GPLA...General Purpose Ladder Analysis
G0...A "no graphics" version of GPLA.
G87...A faster version of GPLA that supports a coprocessor.
L...Low Pass and High Pass filter designs, along with k and q 
calculations.
B...Coupled Resonator LC Bandpass filter design.
X...Lower Sideband Ladder Crystal filter designs. 
Meshtune...This is a utility for tuning individual meshes in a 
crystal filter.
STC...Single Tuned (LC) Circuit.
ZMAT...Impedance Matching Networks.
DTC ....Double Tuned Circuit.

******************************************************************

1.2, GPLA : General Purpose Ladder Analysis

This is the core analysis tool that allows the other filter program 
results to be evaluated and confirmed.  It will analyze filters with up 
to 48 elements.   The elements are usually simple Ls or Cs.  They may be 
complicated elements such as crystals or series or parallel tuned 
circuits.  Elements that can be included in a ladder analysis are those 
that can be reduced to the form of a two-terminal network at each 
frequency.  The filter to be analyzed by GPLA is described by an ASCII 
file.  The filter file is read by pressing "R" from the menu after GPLA 
has been loaded from DOS.  This file may be generated in one of two ways.  
It may be written with a text editor, allowing the user to  describe his 
or her own filter.  Alternatively, the four design programs, L, B, X, and 
STC, will generate circuit files that can be read and analyzed with GPLA.  
(ZMAT does not generate files.)

1.21, GPLA operations available from the GPLA menu are summarized here:

E = Edit.  Press E from the menu to change the numeric value of any of 
the filter components.  The value editor allows you to change two values 
for each circuit element.  Simple parts, like an R or C, will have but 
one viable value.  Others, such as PTC (a parallel tuned circuit) will 
have both a C and L related.  Inductors are described by the inductance 
and by a global, frequency independent Q that is specified within the 
circuit files. 

C = Color shift.  This is a toggle that changes the graphic mode
from color to white on a black background.  The black and white form is 
useful for printing graphic results.  There is no direct printer support 
built into this program.  However, I have had excellent results with 
GRAPHICS.COM from DOS 5.0 from Microsoft.  Find "GRAPHICS.COM" in your 
DOS manual and see if your printer is supported.  The, from DOS, type 
"GRAPHICS {your printer}" followed by a carriage return.  Then, run GPLA 
to generate a graphics screen.  When the screen is one that you wish to 
save, merely press the "Print Screen" key on your keyboard.

If your printer is not among the list of supported equipment, don't 
hestitate to try some of the ones that are available.  There is a good 
chance that you can find one that will work.

P = plots and tables.  Press P to see the "main action" of the program.   
P activates a secondary menu that provides several choices.  Pressing G 
after P allows you to see gain and return loss.  This may be the most 
common application.  Once a gain curve is displayed on screen, you must 
press ESC to get back to the menu.  Other keys are active when you view a 
gain plot.  These are summarized below when we discuss T, which sets up 
"tuning" operations.  

Pressing P after P produces a phase plot.  This is the phase of the
gain.  Also shown with a phase plot is a normalized version of the
derivative with respect to frequency of that phase, known as group
delay.  The peak group delay is always normalized to the top of the
screen.  The value of the peak is presented in the data field to
the right of the plot.  The units are nanoseconds for LC filters,
or milliseconds for crystal filters.  The frequency units are MHz
for LC filters, or Hz with respect to a nominal crystal frequency
for circuits with crystals.  The nominal crystal frequency is shown when
crystals are included in the circuit.

Combined plots of Gain + Return loss, or Phase + Group Delay are the most 
common. You can also plot all variables independent of the others.  

Another option in the plot sub-menu is T, which produces a tabular 
output.  (This is the only option available in G0.) The tables show the 
gain, the phase of gain, and the reflection coefficient (gamma) looking 
into the filter.  The gamma value is not in dB in the tables, although it 
is in dB form when plotted.   The angle of gamma is included, allowing 
the data to be extracted for use in impedance matching programs.  

L = Label for graphs.  Pressing this allows you to enter a sentence that 
will then be printed at the bottom of the graphs.  This feature is useful 
for documentation.

S = sweep setup.  The ASCII file that describes the filter to be
analyzed will include sweep information.  You can override those 
parameters with the S key.  This is especially useful if you are tuning a 
filter where you may want to use a short set of frequencies in order to 
accelerate the calculation rate.

T = Tune setup.  Pressing T from the GPLA menu allows you to set up
tuning.  Tuning means that up to three components that you select can be 
tuned (varied) while viewing a gain plot.  They will have the 
designations of X, Y, and Z.  

A set of instructions will appear after T is pressed, followed by tables 
that outline the components in the circuit.  This is followed by a 
request for data.  You must tell the program the component numbers that 
will become the variables.  You will also be asked to specify the tuning 
step to be associated with each of the three variables.  Pick something 
that seems reasonable with the thought that they can be altered "on the 
fly" during the tuning process.  A step value of about 10% of the present 
component value is often a good starting value.

Once the three parts are picked and the steps specified, the program 
returns to the master GPLA menu.  The next step is to do a plot.  Tuning 
only functions with a plot of gain, P+G, or P+H.  Once you are viewing a 
gain plot, press S.  This saves the present gain sweep as a "reference 
plot."  You will see the sweep change color.  Small "delta" markers will 
also be added to the reference plot.   Next, press the + or - keys.  This 
causes the tuned element designated as "X" to be incremented or 
decremented by the step value that you specified for that variable.  The 
circuit is changed and the new response is calculated.  It is plotted in 
yellow, leaving the reference in white.  

Tuning continues with a variety of options available:

	Continue to press "+" or "-" to increment or decrement the selected 
variable.  	Press X, Y, or Z.  This will select one of the three 
variables for tuning.  The values of all three variables appear on the 
line normally used as a Label.  The selected variable has a value 
displayed in red.  Press R to reset and hide the reference sweep.  Press 
A to "allow" the reference to be plotted after it had been hidden.  Press 
H or D to halve or double the step related to a selected variable.  This 
allows you start with large tuning steps, but to then change to smaller, 
high resolution tuning without returning to a menu.

Try tuning a simple N=2 LC bandpass filter as a learning exercise.  While 
editing the filter, set up one tuning capacitor as a duplicate of 
another.  This can also be done with the inductors.  Once in GPLA, select 
the filter tuning capacitors as one of the "tuned" elements.  Set the 
coupling capacitor as a second variable.  Pick anything as the third 
tuned element.  Then, give the tuning a try.  Examine the implications of 
over and under coupling along with the tuning.  Take a look at the 
tutorial information we presented in a recent QST (December, 1991) and 
try simulating the same effects on the computer.

Although the reference plot is usually used but once, it is now 
restricted.  You can, for example, set up the tuning operation, initiate 
a plot, save the reference with S, press "+" to generate a new plot, and 
press S again.  The result is a screen with two references.  This can be 
repeated to generate a family of output data.

The reference plot (generated with S from a gain plot) is usually used 
with tuning.  It is also useful for comparing two different filter 
designs.  The first filter is loaded in to GPLA and an analysis is run.  
Press S while the gain is on display.   Following this, return to the 
GPLA menu and load the second file.  

Normally, when a file is loaded, the program is initialized, and previous 
reference data is no longer available for display.  It may be retrieved 
for display by pressing "A" from the main menu, which allows the 
reference data to be presented.   Then, when filter #2 gain is plotted, 
the gain from filter #1 will appear as the reference plot.

R = Read the circuit file.  This is almost always the first thing you 
will do, for this imports a filter description into GPLA.  You must 
supply the name of the file.  Type only the basic name; do not include 
the extension.  The last file that was read is listed in the menu.

H = Help.  This "H" is not a general purpose, all-encompassing HELP 
function.  Rather, it is a description of how to write ASCII files that 
describe filters.  The HELP screen is really an extension of this manual.  
It lists all of the circuit elements that can be included in a GPLA 
filter.  The H section also lists the information that you must supply 
regarding sweep and graphing details and the global parameters related to 
inductor Q, crystal characteristics, and terminations.

Two of the available parts are duplicate capacitors and duplicate 
inductors, DUC and DUL. These are doubly useful circuit elements.  They 
simplify the circuit description.  They also allow tuning of "ganged" 
components.  For example, if part #3 is a capacitor, and part #7 is a 
duplicate of part #3, changing part #3 with the + or - keys will tune 
both values at the same time.

Two elements are included as possible circuit "parts" that are not
really parts.  Rather, they are operations that will (a) terminate
calculation and remember an admittance, and (b) insert the
remembered Y into the circuit.  The second can't be used until the first 
has occurred. These branch operations allow the analysis of diplexer 
networks.   The operation is detailed in a schematic diagram in the HELP 
section.

ESC, when pressed from the main menu, will terminate the program.


1.22, Building files to be read by GPLA:


Arbitrary circuits with up to 48 elements are described in circuit files 
that you name.  These files come from the design programs, or are built 
with a DOS text editor.  Assume the file is called LADDER.CIR.   Read 
LADDER.CIR into GPLA by pressing R from the GPLA menu.  Then, type 
LADDER.  Do not include an extension!    

The format of LADDER.CIR is critically important!  The number of entries, 
and their order is all critical.  Each number that GPLA uses must appear   
on a single line in LADDER.  The critical data is at the beginning of  
the line.  The number or expression is followed by a space.   The rest of 
the line may contain anything--including your own documentation comments.  

The first line in LADDER.CIR contains an integer, the number of elements 
in the filter.  Terminations are NOT part of this count, but some special 
operations (e.g., RLB, see below) are.  The second line is the unloaded Q 
of the inductors in the circuit.  A number must be present, even if the 
circuit has no inductors.  Lines #3 and #4 contain the load resistance 
and the source resistance.  They do not have to be equal in GPLA.  

The next parameter, Line #5, is the "Crystal Flag."  This value is 1 if 
the circuit contains quartz crystals, or 0 if there are no crystals.  The 
next four lines describe the crystals if the circuit contains them.
    
The four parameters are:  
a) Frequency, MHz (nominal)
b) L-motional, Henry
c) Parallel C, pF.
d) Unloaded crystal Q.
These apply to all crystals within the circuit.  If the circuit has no   
crystals, the lines are skipped without gaps.

The next data block describes the sweeps.  The frequency units will 
depend upon the filter type.  An LC filter uses MHz.  A crystal filter, 
however, uses "offset" Hz where the reference is the nominal crystal F 
(above.)   The six lines contain :  Beginning frequency, final frequency, 
frequency step (for calculations),frequency grid steps(for plots), gain 
at chart bottom, dB, and finally, dB per division

This sweep data can all be altered during GPLA operation with the "S" 
command from the GPLA main menu. 
 
The element-by-element description of the circuit now begins. The 
components are numbered in order starting at the LOAD end of the filter.  
From 1 to 4 lines will be needed to describe each part with the number 
being a function of the kind of part being described.  The first line 
contains a three-letter code that describes the part.  

Next is a three letter connection code, either SER or PAR.  The two 
remaining elements are numbers giving the values.  Only 1 may be needed. 

The following part codes are available in GPLA.  The line containing that 
code is followed by the connection code (SER or PAR), followed by line(s) 
with values.  The number shown below in [brackets] is the total number of 
lines required for that component type.  Those parts that require a 
(con)nection code are also noted below. 
 

      CAP  = capacitor,             (con)   value, pF             [3]
      IND  = inductor,              (con)   value, nH             [3]
      RES  = resistor,              (con)   value, ohms           [3]
      STC  = series tuned circuit   (con)   val 1, pF; val 2 nH   [4]
      PTC  = parallel tuned ckt     (con)   val 1, pF; val 2 nH   [4]
      RLB  = return loss bridge             no values             [1]
      TBR  = terminate branch               no values             [1]
      ABR  = add Y from branch              no values             [1]
      XTL  = crystal                (con)   value=Hz offset       [3]
      DUC  = duplicate of capacitor         value=dup'd part no   [2]
      DUL  = duplicate of inductor          value=dup'd part no   [2]
      WIR  = zero length wire               no values             [1]

Use all upper case or all lower case letters in the files.  A mixed 
format creates problems.  Always remember that ESC gets you back to 
the menu.

******************************************************************

1.3, L -- Low Pass Filters (and more.)

This is the fundamental synthesis program within the ladder collection.  
It generates the basic Butterworth and Chebyshev low pass filters.  It 
will also generate k and q values for those polynomial types, and will 
write those values to a disk file; that file is then read and used by B
or X for the design of bandpass filters with LC resonators or crystals.  
L will also design high pass filters.  

The following command letters are available from the L menu:

L  -- Press this key to start a low pass design.  Later questions
will allow you to pick either Butterworth or Chebyshev filter shapes.  
You can even enter normalized data from tables for other filter shapes.

H --  Press H to design a high pass filter.  The operation is
essentially the same as with low pass filters.

K -- Pressing K causes a normalized low pass filter to be designed,
one with a cutoff frequency of one radian per second.   After the
filter has been designed, the values are converted to normalized
coupling and end q values.  These are parameters that may be used
for filter design, including the synthesis of crystal and LC
bandpass circuits.  (See Chapter 3 of IRFD.) The calculated k and q data 
is written to a disk file, and the low pass program is terminated.  The 
data file can be read from either B or X, the two bandpass programs.  See 
the hint in section 1.31 below for more info on k and q calculations.

D -- This key forces the filter that you have just designed to be
stored on disk.  Two files are generated.  One, called FILTER.CKT,
is a text file that summarizes the filter.  The other file is one that 
you must name and is the one that will be read by GPLA.  See the
"Help" command in GPLA for a detailed listing of the construction
of circuit filters, which must have a ".CIR" extension.  Type only the 
basic name (without extension) when naming the filter.

The file named FILTER.CKT is one that is generated time and time again.  
It happens whenever ".CIR" file is stored on disk.  If you want to keep 
the information in FILTER.CKT, you should go to DOS and rename the file 
to something that is more specific.  

E -- Pressing E allows you to estimate the response of the low pass
or high pass filter that you are designing.  It's a way to see what
the filter will do for you before the design is performed.  The
estimated results do not include losses.   Inductor loss is, however, a 
part of GPLA analysis.

F -- This key changes the cutoff frequency of the filter that was
just designed, and then proceeds with a new design.

R -- Pressing R changes the ripple.  This allows you to increase the 
stopband attenuation of a Chebyshev filter at the expense of passband 
ripple depth.

ESC --  This key always gets you back to DOS.

Low pass filters are easily transformed to wide bandwidth bandpass 
filters by resonating each element.  Stopband filters are generated by 
replacing each element in a high pass circuit with a tuned circuit.  In 
each case, cutoff frequency maps into bandpass or stopband bandwidth.

1.31, L.EXE Hint:  

L.EXE is primarily aimed at Butterworth and Chebyshev filter design.  
However, it is not so restricted.  If you wish to design a different 
filter type (a different polynomial), you can enter normalized low pass 
element values from the keyboard.  This is done by entering a negative 
value for ripple when ask for that parameter.  

One of the earlier sections outlined using L.EXE to calculate normalized 
k and q values.   These can now be used for bandpass filter design.  
L.EXE can also convert normalized low pass element values to k and q.  
This is a bit subtle, but useful.  Assume that you wish to design a 
Gaussian bandpass filter and you have low pass tables for the Gaussian 
filter.  The Gaussian k and q values are generated by running L.EXE with 
the K option from the menu.  Enter a ripple of -1 (or minus anything) dB.  
The program will then ask you for normalized low pass values, g(n).  
Enter this data.  The result will be on-screen and disk stored data for 
the Gaussian filter.  Exiting L.EXE to DOS, followed by running either 
B.EXE or X.EXE will allow the design of a Gaussian LC or crystal bandpass 
filter.
  
******************************************************************

1.4, B -- Bandpass Filter Design

This program designs LC coupled resonator bandpass filters.  Circuits 
with up to 15 resonators are allowed.  The filters consist of parallel 
tuned circuits that have small coupling capacitors from the "hot" ends of 
the resonators to the adjacent ones.  Each end section matching is 
flexible.  The program allows you to use either series capacitors 
directly attached to the load, or to use a combination of a series and a 
shunt capacitor.  You must pick the series capacitor value.  The program 
then calculates the parallel one.

The first data requested is the filter order when B is first called from 
DOS.   After entering filter order (the number of resonators in the 
filter), the B menu appears on screen and the following commands become 
available:

S -- Press S to start the program.  You will usually use this mode
if you plan on loading normalized k and q data for filter shapes
other than Butterworth or Chebyshev.  Data of this sort is
available in the classic book on filters by Zverev, "Handbook of
Filter Synthesis," Wiley, 1967.

R -- Press this key to review the k and q values that are presently
in the Bandpass program.  You can enter new values, if desired.

E -- This key allows you to enter new end capacitor values.  This
is handy for matching the filter end with components that are
standard values.

B -- Pressing B has the save effect that S does, except that it
automatically inserts the k and q values for a Butterworth filter.  This 
is restricted to 8 pole (or less) filters.

K -- Pressing K causes the k and q data file generated by L, the
Low pass program, to be read and loaded.  The k and q file is an
ASCII text format and can be generated elsewhere if desired.  You
might, for example, wish to build up some k and q data files on
disk and then copy them to the appropriate file when you want to
use that data.  This would be handy if you were using design data from 
Zverev.

A -- this key provides a second look at the output data.  It allows
you to see the results again for the filter you just designed.

N -- This is the New filter key.  It starts the B program from
scratch with a filter with a new order.

D -- This key forces the filter that you have just designed to be
stored on disk.  Two files are generated.  One, called FILTER.CKT,
is a text file that summarizes the filter.  The other file is one that 
you must name and is the one that will be read by GPLA. Type only the 
basic name (without DOS extension) when naming the filter.

ESC -- This is the key you push to get back to DOS.

******************************************************************

1.5, X -- Lower Sideband Crystal Ladder Filter Design

X.EXE is the crystal bandpass filter design program.  The program is 
based upon reactance slope matching as a mechanism for approximating the 
complicated behavior of a crystal with that of a simpler series tuned 
circuit.   The slope matching approximations have worked well for a large 
variety of crystal filters.

Note: Although approximations have been used in the filter synthesis, 
there are no approximations in the analysis used in GPLA other than those 
related to the crystal model.  The crystal is modeled as a series RLC 
paralleled by a single capacitor.

The term "mesh" is often used in the following discussion.  "Mesh" refers 
to a closed loop.  We often think of a ladder filter as a collection of 
meshes; shunt elements in the ladder are shared between adjacent meshes 
and serve to couple energy from one mesh to another.  Nodal analysis 
examines Kirchoff's current law with regard to each node in a circuit.  
In the same way, Kirchoff's voltage law is applied to each mesh in a 
circuit.

The X menu includes the following:

B = Begin the program with manual data entry.  You will have to
insert k and q data by hand when you use this mode.

K -- Press K to cause the program to read a file of k and q data
and to then start the design process.  This data can be some that
was generated with L, the low pass program.  Alternatively, it
might be data that you have previously put into a text file.  The
file that is read by X is named KQDATA.NFO.  You can copy (in DOS) a file 
of your own to this file, if desired.  The designs are restricted to 
orders of 15.

Q -- Press this key to get more information about the k and q data
files.  This is helpful if you want to save some of the data.

C -- This key generates k and q values for the so-called minimum loss, or 
Cohn filter.  The corresponding filter is then designed.  This polynomial 
(filter type) is especially handy for crystal filters, for it leads to a 
filter design where all crystals are at the same frequency, and all 
capacitors have the same value.  The original work that Cohn did only 
went up through order 5.  We noted in using his data that the k and q 
values could be approximated by relatively simple expressions.  Those 
formulas are included in the program routines.  The X program allows Cohn 
filters of higher order to be designed, although this may be less than 
practical.  Filters using the Cohn coupling and loading parameters tend 
to have severe "bumps" in the response at the passband edges.  The 
filters do, however, have extremely steep skirts.  (We have built filters 
of this type up to 10th order.)

ESC -- This again is the mechanism to get back to DOS.

1.51, On the tuning of crystal filters:

Although we have avoided tutorial discussions in this mini-manual, a few
words may provide a better understanding of what happens when a crystal 
filter is "tuned."  In general, a coupled resonator bandpass filter, that 
is, one with many resonators that share energy, will have all resonators 
tuned to the same frequency.   A "flat" or multiple-peaked response may 
suggest that the filter is "stagger tuned"  with individual tuned 
circuits each peaked at a different frequency.  This does not happen in 
the properly tuned modern bandpass filter.  Rather, each resonator, when 
tuned in isolation from all others, is peaked at the filter center 
frequency.

The lower sideband crystal ladder filter is built from series crystals 
and shunt capacitors.  The shunt C values vary, controlling the sharing 
of energy between resonators.  The shunt capacitors have the additional, 
undesired effect of detuning the individual meshes.  Each mesh will be 
detuned from the intrinsic crystal resonance by an amount related to the 
net series C in that mesh.  All meshes are brought to the same resonant 
frequency by offsetting the nominal crystal frequency.  This offset is 
calculated for each mesh and is part of the output data from X.  Also 
part of the filter output data is the highest resonant mesh frequency in 
the filter.  This is actually the frequency that each mesh should be 
tuned to in order to obtain the proper response.  Because one mesh will 
be the highest, it will require no tuning.  All others must be moved 
higher in frequency to effect proper filter tuning.

Our goal is to "tweak" the overall crystal filter to produce a circuit 
that has the desired shape, bandwidth, impulse response, and termination 
impedance.  We do this by allowing the exact center frequency to merely 
"happen."  We may start with a batch of crystals that are perfectly 
characterized and matched to each other and are marked as "10 MHz."  The 
actual series resonant frequency is actually a couple of kHz below 10 
MHz.  (We usually ignore the offset in design, although this is not 
required if you wish to insert the actual series resonant frequency 
during filter design.)  The design procedure then generates circuits that 
are tuned a bit above the crystal resonance.  This approach has been very 
useful when designing filters that become the basis for a receiver 
design.  It is more difficult to specify an exact center frequency and to 
design filters accordingly.     

Consider a design example.  A 5 pole (5 crystals) Butterworth filter was
designed to use 10 MHz crystals with measured parameters of 20 mH
motional L, 3 pF parallel C, and Q-u=200,000.  (These default values are 
built into the program and characterize a batch of crystals I have used 
for numerous designs.)  The filter, designed for a 1 kHz bandwidth, was 
symmetrical about the center crystal.  The end terminations were 500 
Ohms.  The shunt end capacitors were 36 pF, C12=C45=115 pF, and 
C23=C34=207 pF.  Proper filter tuning occurs with the individual crystals 
offset, respectively, by 0, 609, 837, 609, and 0 Hz.

(The k and q data for this design was generated by L, the low pass 
program.  L was called from DOS and the "K" option was picked from the 
menu.  N was set at 5.  The calculated k and q data was automatically 
sent to a disk file.  After exiting L, the X program was entered and 
started with the "K" option.) 

There is another route to resonance:  An equally viable filter can
be built by picking all crystals to have the same frequency.  Then,
each mesh that should resonate at a higher frequency is tuned upward by 
the insertion of a series capacitance.   The example filter outlined 
above could, for example, be built with 5 identical crystals.   The end 
meshes would be unaltered.  However, the center mesh would have a 68 pF 
capacitor inserted in series with the crystal.  The 2nd and 4th mesh 
would have 92 pF added in series with each crystal.  Each mesh is 
resonant 1433 Hz above the nominal crystal frequency.

******************************************************************

1.52, Meshtune

This utility program is the tuning tool that allows one to pick the
capacitors that should be inserted in meshes to move them to a desired 
frequency.  This is an analysis program rather than one for synthesis.  
That is, the user, picks capacitor values and the program then calculates 
and displays the result.

Meshtune's menu offers three initial choices:

B -- B allows you to begin the tuning of a new mesh.  This requires you 
to tell if it is an end or interior mesh and to give the coupling 
capacitors. It will also ask for crystal data including offset frequency.  
This is the actual offset frequency of the crystal to be used.  If you 
are building the filter with identical crystals, the offset will be 0 Hz 
for all meshes.  However, this is not mandatory.  You can use any crystal 
that is offset by an amount less than the eventual mesh offset frequency.  
This provides you, the filter builder, with tremendous freedom.   Another 
frequency parameter, a "target" for tuning, is requested in this program 
section.  This is the HIGHEST MESH FREQUENCY, a parameter that is 
included in the output file, FILTER.CKT.  This was 1433 Hz in the earlier 
example.

F -- This specifies an initial frequency.  This will be automatic
if you start with B above.

T -- This allows you to specify the tuning capacitor in the mesh.
Don't be afraid to guess; the program will give you the results.

Once a mesh has been set-up for tuning, additional active keys
become available:

Up and Down Arrows -- This is the main mechanism for tuning.  This
allows you to change the C value and to see the resonant frequency
that results.  This is compared with the "target."  Be careful with the 
tuning.  The Up arrow increases the series C, which decreases the 
resonant frequency.  

S -- pressing S allows you to set up the capacitance STEP for
tuning.

After a mesh is set up for tuning, it is evaluated by pressing the
up and down arrow keys, causing the C to increase or decrease.  The
resulting resonance is presented and is compared with the target.
After you get close, you may need to use "S" to reduce the C tuning
step.

******************************************************************

1.6, STC -- The Single Tuned Circuit

This program designs a simple, but useful version of a single tuned 
circuit.  A parallel resonator is the starting point for the single pole
filter.  A center frequency, bandwidth, inductance, and unloaded Q
are picked.  Then, the tuned circuit is equally terminated at each
end, but by two different termination methods.  A capacitive tap method 
is used at one end; this is identical to that used at each end of the 
filters designed by the bandpass LC program, "B".

The matching at the other end is done by lifting the grounded inductor 
terminal.  It is then attached to the termination (usually 50 Ohms) and 
is paralleled with a reactance, either a shunt C or a shunt L.

This circuit is a very useful topology with a near symmetrical response 
and useful stopband attenuation.  Be careful with it though:  The shunt C 
values are often large and may not be consistent with intuition.  The 
circuit can generate excessive insertion loss if you try to do it 
empirically.  This filter is one that should be designed, by the numbers, 
and does not lend itself to growth "at the bench."

We described this circuit in a note presented in QEX, June, 1993.

******************************************************************

1.7, ZMAT --  Impedance Matching

This is a program that looks at a few of the traditional impedance 
matching options available to the circuit designer.  The program designs 
pi networks, L-networks, and Tee-networks of the L-C-C and L-C-L variety.  
The program "drives" itself.  

The usual impedance matching networks are low pass structures; they use 
shunt C and series L elements.  Alternative versions use series C and 
shunt L elements, a high pass structure.  One form may be more practical 
than the other.  The (generally) low pass circuits designed by ZMAT may 
be converted by replacing each element in a network with one of the 
opposite type.  The reactance should be preserved at the match frequency.


******************************************************************

1.8, DTC -- Double Tuned Circuit

This program is much like STC described above, but it designs a double 
tuned circuit.  This program is essentially the same as B.EXE, except 
that it designs only one circuit type: STC generates 2nd order LC 
Butterworth bandpass filters.  The program is quicker and, hopefully, 
easier to use than the more general B.EXE.  

The circuit designed uses parallel resonators that are coupled with a 
small capacitor between the "hot" end of the tuned circuits.  The end 
matching is realized with a tapped capacitor arrangement.  The filters 
designed with DTC are completely symmetrical.

******************************************************************

2.0  General Programs: 

The following programs are available in the IRFD collection.  These are 
design tools that we have written for our own use.  Most of the design 
basis for them is found in the text, although there are a few exceptions.  
We have offered some references in the program menus, showing the reader 
a source for more information about the subject.

******************************************************************

2.1. NPNBIAS.EXE and JFETBIAS.EXE are simple biasing programs.  One deals 
with NPN bipolar transistors while the other considers the junction FET.  
The equations used are from Chapter 1, p11, of IRFD.  The equations and 
the program are restricted to areas of positive voltage.  If the wrong 
resistors are inserted in the program, invalid results will be calculated 
and presented.  Further, an audible alarm sounds and a warning message is 
displayed.  

******************************************************************

2.2.  PADCAP.EXE is a program that deals with tuned circuits with padding 
capacitors.  These might be used in an oscillator.  A combination of 
series and/or parallel capacitors are used with a single inductor and a 
variable capacitor.  The user may specify all component values and then 
see the resulting lower and upper ends of the tuned frequency range.  
Alternatively, he or she may specify a desired lower frequency.  One of 
the fixed capacitors will then be set to establish that frequency.  A 
HELP function provides additional operating information.  There is no 
special place in the text that covers this fundamental set of resonance 
calculations.

******************************************************************

2.3.  RESONANC.EXE is a simple resonance program.  The resonant frequency 
of an LC circuit is calculated by the traditional equation.  This program 
is merely a convenient way to do this.  Three parameters, L, C, and F are 
related to the tuned circuit.  The program allows you to pick any two and 
to then calculate the third.
 
******************************************************************

2.4.    PHASEPI.EXE presents an alternative way to design a pi network.  
The pi is a common topology for an impedance matching structure; it is 
usually designed on the basis of the terminating resistances and by 
picking an almost arbitrary parameter, Q.  The parameter Q is merely the 
ratio of one of the terminations to the related reactance.  The 
traditional design is performed in the program ZMAT.  The program 
PHASEPI.EXE allows pi networks to be designed by picking the end 
terminations and the phase of the transfer function.  The resulting 
networks are especially useful when building special phasing circuits for 
use with, for example, phased antennas or the phasing method of SSB.  The 
basic equations for this design are found in a text by T.R. Cuthbert, 
Jr., "Circuit Design Using Personal Computers," John Wiley & Sons, 1983, 
p173.  See also the earlier reference, Terman, "Radio Engineer's 
Handbook," McGraw-Hill, 1943.

******************************************************************

2.5.  PADS.EXE is a program for the design of resistive attenuators.  
Three pad forms  are considered:  the pi, the Tee, and the bridged-Tee.  
All three circuits are symmetrical, requiring equal termination at each 
end.  This is a synthesis, or design program.  Once a pad is designed, 
the builder may wish to use an analysis program to evaluate the effect of 
using standard valued resistors that are close in value to the calculated 
design values.

******************************************************************

2.6.  PLL.EXE is one of the more extensive programs in the collection, 
requiring a computer with a VGA display.  PLL deals with the analysis of 
Phase-Locked Loops.  When the program is initially run, it starts with a 
built-in data set which corresponds to the frequency synthesizer example 
used on page 327 of Intro. to RF Design.  The basic loop (in open loop 
form) considered is that of Fig. 7.47 while the loop filter is that of 
Fig. 7.48.  The program goes a bit further than the text by including 
additional elements in the loop.  These are a 2nd order RC active low 
pass filter and a passive filter representing the usual decoupling RC in 
the line to the VCO control point.

PLL.EXE operates like most of the programs in this collection.  That is, 
default data is present in the program.  If you wish to keep displayed 
data, you need only press the ENTER key.  

A schematic appears when the program is started.  You can get back to it 
(from the menu) with the I key.  Next, a menu appears.  We will follow 
through with an example as a method of illustrating the program 
operation.  

Start from the main menu by pressing D to enter data.  A second memo 
appears; pick A, the "All of the above" option.  The first data to 
consider is the frequency sweep.  PLL uses a log-sweep.  Press the Enter 
key to keep the 1 Hz to 10000 Hz range.  You also have an option that 
determines the resolution of the sweeps.  This allows the user to pick 
the number of points that will be calculated per frequency octave.  Keep 
the 1 value, for it allows some extra data (gain slope) to be calculated 
later.

Next, the VCO is described.  Keep the default data.  Similarly, retain 
the phase detector gain and the synthesizer N number.  (N can be 1 for 
one-on-one loops.)  

Next, we consider the loop filter details.  Again, keep the default data 
as shown.  R1 is broken into two equal values, with a small valued 
capacitor to ground being inserted between the two resistor segments.  
Retain the 1 pF value shown.  

The next data that can be entered describes an extra RC Active low pass 
filter.  This is useful when extra reference sideband suppression is 
required.  Enter 0 for the capacitor, forcing the extra filter to be left 
out of the design.  If you do include the RC Active filter, note that the 
one built into this program is one with two equal capacitors and equal 
resistors.  This is a Q=0.5 low pass.  For more information on RC Active 
filters, see the text by Johnson, Johnson, and Moore, "A Handbook of 
Active Filters," Prentice-Hall, 1980.

Next, a single RC filter can be inserted in the loop.  This is usually 
present for the purpose of decoupling the varactor diode (or whatever 
happens to be controlled) in the VCO.  This RC may even be used to 
represent the capacitance of the varactor diode if it has any impact on 
loop dynamics; this can be a problem that is sometimes forgotten in some 
very wide bandwidth loops.

All data is now in PLL.EXE.  Press M to return to the main menu.  You can 
now ask for either tabular or graphic data.  Press P to see some numeric 
information.  The first point at 1 Hz is presented, showing the open and 
closed loop gain for the loop.  Note that the phase is about 180 degrees 
for the open loop.  We present the actual phase rather than the phase 
margin that is sometimes used with servo systems.

Press any key and now see the data for 2 Hz.  Press a key again and see 
the 4 Hz results.  You can continue until the upper frequency that had 
been specified earlier is exceeded. 

Returning to the main PLL menu, we now ask for Bode plots by pressing B.  
Another menu is now available.  Pressing G gives the open loop gain Vs 
frequency.  This curve should be identical to the data presented in Fig. 
7.49 on page 329.

A useful curve to examine is the gain slope, available by pressing S.  
This is most useful after G has been run.  From G, note the frequency 
where 0 dB of open loop gain occurs.  Then, from S, examine the gain 
slope at this crossover frequency.  The slope should be less than 12 
dB/octave for loop stability.  Values closer to 6 dB per octave are 
preferred for good transient behavior.

The program has, so far, been used only for analysis.  Some synthesis is 
also built into the program.  Return to the main menu and press S.  This 
will then allow you to pick a new loop bandwidth and damping factor.  
Note that these parameters apply only to the basic 2nd order, type II 
loop.  Any of the extra filtering we may have added will complicate 
things.  A good general practice is to design the basic loop and confirm 
the synthesis goals with Bode plots.  Then, return to the data input 
sections and add the extra filters if they are needed, using further Bode 
plots to confirm that the basic loop parameters have not changed.

An option available from the main PLL.EXE menu allows color control.  
This option allows the user to replace the white on blue that we used 
with a white on black display.  This monochrome form is preferred if you 
are going to do printouts of the graphics.  See the earlier comments 
relating to GPLA.


******************************************************************

2.7.  FBA.EXE is a program to evaluate the small signal gain of single 
transistor feedback amplifiers.  The transistor model used is a hybrid-pi 
bipolar, which was treated in Chapter 5.  The default that begins 
analysis is similar to a 2N3904.  The program calculates the transducer 
gain magnitude in dB and the complex input and output impedances.  
Pressing the "Z" key allows the corresponding return-loss values to be 
presented.  

FBA has a number of "active" keys, elements that may be pushed from the 
keyboard to cause a variety of things to happen.  All of the functions 
are listed in the HELP screen, accessed with "H" pressed from the 
display.  The active keys allow the frequency to be increased in a couple 
of different ways and allow the circuit to be changed.  Circuit 
alterations to consider are mainly related to the feedback networks.  The 
two feedback forms used are parallel feedback from collector to base via 
a series RLC and emitter degeneration with a series RL.  The basic 
transistor may also be changed.  You may want to experiment with much 
higher F-t transistors.  Transistor bias current is a vital parameter for 
the circuit.

The single stage amplifier of FBA is designed for a restive termination 
at both the base and the collector.  While 50 ohms is usually a good 
input termination, higher values at the collector (200 Ohms, for example) 
will often provide better gain.  A bifilar wound ferrite transformer will 
match a 50 ohm output load to a 200 ohm collector.  Note that the 
amplifier designed here uses feedback from the collector and not from a 
transformer output tap.  

The accuracy of the numbers generated by FBA is, of course, limited by 
the accuracy of the model.  The results become better as more feedback is 
used, decreasing amplifier gain.  The circuit performance is then 
determined by the feedback elements rather than the transistor type.

******************************************************************

2.8. COILS.EXE is a simple program for the design of toroid and single 
layer solenoid inductors.  The equations are the simplest available.  For 
a toroid, L=KN^2.  The form used for the solenoid is the classic form 
that has been in the ARRL Handbook since the beginnings of radio.  This 
equation relates inductance to the number of turns, the coil diameter, 
and the coil length.  We have modified the equation, replacing the length 
dependence with a pitch.  This allows length to be calculated in the 
program as a function of the number of turns.  

We have found the small solenoids designed with this program to be 
especially useful when bread boarding VHF and UHF circuits with surface 
mounted components.   

******************************************************************

2.9.   COLPITTS.EXE is an analysis program that investigates the Colpitts 
oscillator.  It is based on the equations derived and presented in 
Chapter 7.  The program is run from the menu by pressing suitable keys.  
You must describe the basic oscillator by entering the component values.  
The program will then give numbers for the starting gain and the angle of 
that gain.  The program also provides an estimate for the collector 
signal voltage.  This is merely an estimate and the number should not be 
taken seriously!  (Try SPICE if you need to do amplitude simulations.)

One of the input parameters for the oscillator is inductance.  Another is 
the Q of the inductor.  You will see that as Q is decreased, the starting 
gain will drop.  COLPITTS.EXE will also allow you to load the oscillator 
tank with a capacitive voltage divider that drives a restive termination.  
The program evaluates the effect on starting gain as well as the loaded Q 
of the oscillator tank.

******************************************************************

2.10.   APSN.EXE examines an Audio Phase Shift Network.  This is actually 
a phase difference network.  An audio input voltage is applied to two 
paralleled chains, each containing four active first order all-pass 
networks.  

Each all-pass is built with an op-amp, three resistors, and one 
capacitor.   The program includes a schematic of the basic, first order 
all-pass section and a block diagram of the system with 8 of these 
networks.  All eight all-pass sections are identical except for the 
resistor R(n).  All of the capacitors are .01 microfarad.   One chain is 
specified by stages with n=1, 2, 3, and 4 while the second chain has n=5, 
6, 7, and 8.  

This audio phase shift network can be used to process a signal from a 
microphone.  The two resulting outputs have a phase that is continually 
changing with frequency.  The difference in phase between the two 
channels is calculated by the program.  

A default case is built into the program.  In that case, R(4) and R(8) 
are equal.  As such, those sections have identical phase responses and 
they contribute nothing to the overall difference.  Hence, the default is 
really a pair of three element all pass filters.

Two 4 element chains can be used in receive applications.  Each network 
processes one of the quadrature outputs from a SSB product detector.  The 
outputs are then combined with an audio summing network.  See, for 
example, the work of Rick Campbell, KK7B, QST, January, 1993, page 32.

******************************************************************

2.11.   CASCADE.EXE is a relatively simple program that has proved itself 
to be a real "work horse" in numerous projects, ham and otherwise.  
CASCADE.EXE calculates the gain, noise figure, and third-order 
intermodulation intercepts (input and output) for a chain of up to eight 
stages.  It also calculates the minimum detectable signal and the 
two-tone dynamic range for the cascade when a system bandwidth is 
provided.

The methods used in this program are all presented in Chapter 6.  
Although the methods for calculating noise figure for a cascade are well 
established, the IMD of a cascade is less familiar.  The basis for the 
program is the "resistors-in-parallel" rule derived in Chapter 6.  Note 
that this is a worse case, coherent addition case.

A default 7-stage example is built into the program.  This is accessed by 
entering 0 as the number of stages.  Each stage is specified by a gain, 
noise figure, and output intercept.  If a stage is to be free of IMD, it 
is described with an output intercept of +90 dBm.  

The primary program output is a chart showing a summary of the 8 stages 
and the system performance.  Any stage can be changed without leaving the 
output display.  The stage that is selected for change is marked with the 
line  ************.  The selected stage for change is picked by pressing 
the up or down arrow keys.  A marked stage is altered in gain by pressing 
either g or G.  The lower case g increases the gain while upper case G 
decreases the gain.  Similarly, intercepts are incremented with i or I, 
while n or N changes noise figure.  

The program starts with 1 dB changes causes by the g/G/i/I/n/N keys.  
However, pressing + or - will shift those values to either 5 or 0.2 dB.  
The + and - keys can be used again, if desired with the dB change value 
being altered by a factor of 5.

An especially useful feature of CASCADE.EXE is the sensitivity analysis, 
accessed by pressing S or s from the display.  This causes the individual 
stages to change noise figure, gain, and output intercept by 0.5 dB.  The 
result of those perturbations on the system is then presented.  It 
becomes clear which stage will have the most effect on system noise 
figure or input intercept.  

A help screen is always available by pressing H.  This outlines the 
function of all of the active keys used in CASCADE.EXE.

******************************************************************

2.12.  SPURTUNE.EXE is a mixer evaluation program.  Any mixer will 
generate output frequencies of Fout = LO +/- RF.  These are usually the 
desired products.  The more general case is potentially very intimidating 
where Fout = n*LO +/- m*RF where n and m are integers.  The products 
other than the desired ones are called spurious responses, or "spurs."

Numerous methods have been invented to deal with and predict these 
spurious responses.  See, for example, the treatment of spur charts by 
Rohde and Bucher in "Communications Receivers: Principles and Design," 
McGraw-Hill, 1988, page 106.

This program, SPURTUNE.EXE, uses a different approach to the display of 
data.  The user defines a range of output frequencies he or she wishes to 
examine, along with initial frequencies for the RF and LO inputs.  The 
resulting output is then presented on screen as if the mixer output was 
being examined with a spectrum analyzer.  The main output signal is shown 
at maximum strength in yellow.  The spurious responses, if present, are 
shown in blue.  They have a height that is inversely related to the sum 
of n and m, the total order of the spur.  

The operation of SPURTUNE.EXE will be illustrated with an example, a ham 
project.  Assume that a 40 Meter (7 to 7.3 MHz) SSB transmitter is to be 
built.  It will use readily available European color burst crystals in an  
IF system at 4.43 MHz.  The local oscillator will operate at 2.6 MHz.

Once the program is started, press D to enter some data.  The first 
parameter entered is the output spectrum.  We will look beyond the normal 
band, examining from 6 to 8 MHz.  A marker is available; we set it at 7 
MHz with a related step of 50 kHz, entered as .05 MHz.  The initial LO is 
set at 2.57 MHz with a step of 10 kHz.  The RF input is 4.43 MHz with a 
step of 10 kHz.  

The display appears, showing the spanned range of 6 to 8 MHz.  The only 
signal present is the desired one at 7 MHz.  The LO is initially tuned 
with the Up/Down arrow keys.  The output moves in the display window; all 
related frequencies are numerically presented on screen.

Now, press L.  This will allow us to select which orders of LO harmonics 
will be allowed.  Instructions appear in the spectrum window.  Press L 
again, activating all possible LO harmonic numbers.  If specific ones 
were desired, we could select them alone.  Note that higher orders are 
selected with a HEX, or hexadecimal specification.  (Even RF designers 
have to use digital methods from time to time.)  

After selecting all possible LO orders, press ESC.  This causes a return 
to the spectrum display.  Next, press R, allowing RF harmonics to be 
selected.  Again press L to select all, followed by the ESC key, forcing 
a return to the spectrum display.

The display now shows a number of blue spurs.  Move the LO to 2.66 MHz by
pressing the up and down arrow keys.  There are now numerous spurs, but 
the are all bunched together.  Incrementing the LO further causes them to 
spread out in a much more random way.  This spectral bunching is common 
with systems of this sort.

Numerous "active" keys are available to the user, including the H, which 
produces a help screen.  This outlines the functions of the available 
active keys.  

Press M.  This causes the frequency span to increase from a 2 MHz window 
to one that is much larger.  The "maximum span" in this example is 64 
MHz.  Tune the LO and note that the bunching occurs over a wide 
bandwidth.  Press N to return to a "normal" display.

The display we have examined is interesting, but it is not very specific.  
That is, the program has not told which n and m values produce problems, 
and it has not told us where the spurs occur.  To get this information, 
we press the S key to sweep over the ranges to find the spurs.  Eighteen 
of them are located for this example with the LO at 2.66 MHz.  After 
glancing at the resulting list, we press any key and return to the 
spectrum display.  

The output spur data has disappeared from the spectrum window.  We can 
see the results if the individual spurs by pressing I.  The first spur we 
see is a 1:2 spur; the first LO harmonic beats with the 2nd harmonic of 
the RF to produce a spur in the 6 to 8 MHz output.  Press I again and see 
a 2:3 spur.  The next press of I yields a 3:0 spur; the third harmonic of 
the LO appears in the output window.  

Play with some of the individual spurs by tuning either the LO or the RF 
input.  The rate that the spurs move in frequency is directly 
proportional to the order. 

We have examined the severe spurs that compromise the output of the 
proposed transmitter.  Consider now an exercise:  Replace the 2.5 MHz LO 
with one at 11.43 MHz, now above the desired output .  The spurs will be 
much less numerous.

The example presented was a transmitter.  Receivers can also be 
considered.  The span of the output spectrum now represents the IF band.  
We ask which RF frequencies and LO frequencies will generate spurs.  Use 
a span that is much wider than the bandwidth that may eventually be used 
in the actual receiver.  If the span is too narrow, the spurs will be 
missed.  

This program locates spurs in frequency.  It does not, however, say 
anything about how strong the spurs may be in a real application.  This 
is a function of the mixer, the LO and RF powers that are applied to it, 
and the balance that may or may not be built into it.  Balance will 
substantially reduce some spurs, while it will have little or no impact 
on others.

SPURTUNE is exited by pressing the ESC key.

******************************************************************

2.13.  SCTU.EXE is a Smith Chart tutorial.  This program was originally 
written to go with ARRL MicroSmith, a Smith Chart program offered by 
ARRL.  The tutorial treats methods of impedance matching with a Smith 
Chart, rather than the chart fundamentals.  Both the basis for the chart 
and the applications are presented in Chapter 4 of Intro. to RF Design.

******************************************************************

Program Support

If questions should arise regarding any of these programs, support is 
available.  The questions should be sent to 

Wes Hayward, W7ZOI
7700 S.W. Danielle Ave.
Beaverton, OR 97008 USA

Be sure to specify which program you are asking about.  A self-addressed 
self stamped envelope is always appreciated.

I certainly hope that you enjoy the IRFD collection of programs!

73


